package cn.broadsense.thrid.result;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * 算法告警规则
 *
 * @author pengxin
 * @date 2022-10-08 16:10
 */
@NoArgsConstructor
@Data
public class AlAlarmRulesResult implements Serializable {
    private static final long serialVersionUID = -1580110055331327936L;


    private List<AlarmRulesRuleResult> alarmRules;

    @NoArgsConstructor
    @Data
    public static class AlarmRulesRuleResult {
        private Integer alarmDuration;
        private String alarmCodeKey;
        private List<AlarmCodeValuesRuleResult> alarmCodeValues;

        @NoArgsConstructor
        @Data
        public static class AlarmCodeValuesRuleResult {
            private SourceInfoRuleResult sourceInfo;
            private String value;
            private String describe;

            @NoArgsConstructor
            @Data
            public static class SourceInfoRuleResult {
                private String routeKey;
                private String fieldName;
                private String fieldValue;
                private ParseInfoRuleResult parseInfo;

                @NoArgsConstructor
                @Data
                public static class ParseInfoRuleResult {
                    private Boolean flag;
                    private String fieldName;
                    private String fieldValue;
                }
            }
        }
    }
}
